package com.ynt.pay.common.enums;

import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * 操作码
 *
 * @Author: ganbo
 * @Date: 2019/9/27 18:19
 */

@AllArgsConstructor
@Getter
public enum ExceptionCodes {

    //===================系统相关================
    SUCCESS("200", "操作成功"),
    FAIL("1002", "操作失败"),
    BUILD_SING_FAIL("1001", "构建请求行方签名失败"),
    SYSTEM_EXCEPTION("1003", "系统异常"),
    PARAMETER_ERROR("1004", "参数校验异常"),


    //===================用户相关============
    ALREADY_REGISTER("2001", "用户已注册,请勿重复注册"),
    USER_NOTEXIST("2002", "用户不存在"),
    BANK_REGISTER_FAIL("2003", "存管注册失败"),
    SMS_BIZTYPE_ERROR("2004", "验证码业务类型错误"),
    SMS_SEND_ERROR("2005", "验证码发送错误"),
    SMS_VERIFICATIONCODE_ERROR("2006", "短信验证码错误"),

    //===================支付====================
    AMOUNT_ERROR("3001", "金额不能小于0"),
    PRE_PAY_FAIL("3002", "预支付失败"),
    PRE_PAY_RECHAGE_USER_NOT_MATCH("3003", "支付订单不存在"),
    CONFIRM_PAY_FAIL("3004", "确认支付失败"),
    CONFIRM_PAY_REPEAT("3004", "不能重复确认"),
    CONFIRM_PAY_PENDDING("3005", "确认支付处理中"),
    CONFIRM_PAY_SUCCESS("3006", "确认支付成功"),

    TRANSFER_ERROR("3007", "不能自己给自己下单"),
    TRANSFER_AMOUNT_ERROR("3008", "转账金额必须大于0"),
    TRANSFER_COMMISSION_ERROR("3009", "转账佣金不能小于0"),
    TRANSFER_COMMISSION_AMOUNT_ERROR("3010", "交易佣金不能大于订单金额"),
    TRANSFER_BALANCE_DEFICIENCY("3011", "转账失败,余额不足"),
    RANSFER_FAIL("3012", "支付失败"),
    RANSFER_PAY_PENDDING("3013", "转账处理中"),       //TODO 具体详细代码处理逻辑待确认
    RANSFER_ORDER_NOT_EXIST("3014", "订单不存在"),
    RANSFER_ORDER_STATUS_NOT_SUPPORT("3015", "当前订单状态不支持此操作"),
    RANSFER_PLATFORM_TO_SELLER_ERROR("3016", "平台账户转账到卖家发生异常."),
    RANSFER_PLATFORM_TO_SELLER_NET_ERROR("3017", "平台账户转账到卖家发生网络异常."),
    BACK_PENDDING("3019", "退款处理中."),

    //===================提现========================
    WITHDRAW_AMOUNT_ERROR("5001", "提现余额不能小于0"),
    WITHDRAW_BALANCE_NOT_SUFFICIENT("5002", "提现余额不足"),
    ITHDRAW_PENDDING("5003", "提现处理中"),
    WITHDRAW_FAIL("5003", "提现失败"),
    WITHDRAW_NOT_EXIST("5004", "提现单不存在"),

    //===================保证金========================
    DEPOSIT_NOTEXIST("6001", "保证金记录不存在"),
    DEPOSIT_AMOUNT_ERROR("6002", "退还保证金金额不正确"),

    //===================上海银行异步通知=============
    NOTIFY_CONFIRMPAY_NOT_FIND_USERFUNDRECORD("6001", "异步通知:确认支付:找不到对应的订单"),

    //===================对帐========================
    RECON_FILE_DOWNLOAD_ERROR("7000", "对账文件下载失败"),
    RECON_FILE_NOT_FOUND_ERROR("7001", "对账文件不存在"),
    RECON_DATE_READ_ERROR("7002", "对账日期格式错误"),
    RECON_FILE_READ_ERROR("7003", "对账文件读取错误"),
    RECON_NOT_MATCH_ERROR("7004", "对账文件存在差异"),

    //===================用户材料上传=================
    USER_DATA_UPLOAD_ERROR("8001","用户材料上传E企通失败"),
    ;


    private String code;
    private String desc;
}
